home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
PsL Monthly 1993 December
/
PSL Monthly Shareware CD-ROM (December 1993).iso
/
prgmming
/
dos
/
basic
/
pbtool.exe
/
CLEAR.BAS
< prev
next >
Wrap
BASIC Source File
|
1992-02-17
|
4KB
|
154 lines
'----------------------------------------------------------
' PROGRAM: CLEAR.BAS PROGRAMMER: A. KELLETT
' DATE-WRITTEN: 02/17/92
' USING POWER BASIC V2.10A
'
' THIS PROGRAM DEMONSTRATES DIFFERENT WAYS TO CLEAR A TEXT
' SCREEN. INCLUDE ANY/ALL THE SUBROUTINES IN YOUR PROGRAM.
' CALL THEM WITHIN YOUR PROGRAM INSTEAD OF USING THE CLS
' STATEMENT.
' VERSION: 1.00 LAST UPDATED: 00/00/00
'----------------------------------------------------------
CALL FILLSCREEN("A")
CALL CLEARBOTTOMTOP
CALL FILLSCREEN("B")
CALL CLEARIN
CALL FILLSCREEN("C")
CALL CLEARLEFTRIGHT
CALL FILLSCREEN("D")
CALL CLEARMOUT
CALL FILLSCREEN("E")
CALL CLEAROUT
CALL FILLSCREEN("F")
CALL CLEAROUTM
CALL FILLSCREEN("G")
CALL CLEARRIGHTLEFT
CALL FILLSCREEN("H")
CALL CLEARTOPBOTTOM
LOCATE 19,30:PRINT "THANKS... CLEAR.BAS FROM PBTOOL PKG."
END
'================= SUBROUTINES FOLLOWING ===============
'
' CLEARS THE SCREEN FROM BOTTOM TO TOP
'----------------------------------------------------------
SUB CLEARBOTTOMTOP
LOCAL I%
FOR I% = 25 TO 1 STEP -1
LOCATE I%,1:PRINT STRING$(80," ");
DELAY .05 '** REMOVE DELAY IF NEEDED **
NEXT I%
END SUB
'
' CLEARS THE SCREEN FROM TOP & BOTTOM TO MIDDLE
'----------------------------------------------------------
SUB CLEARIN
LOCAL I%, J%
J% = 25
FOR I% = 1 TO 12
LOCATE I%,1:PRINT STRING$(80," ");
LOCATE J%,1:PRINT STRING$(80," ");
DELAY .05 '** REMOVE DELAY IF NEEDED **
J% = J% - 1
NEXT I%
LOCATE 13,1:PRINT STRING$(80," ");
END SUB
'
' CLEARS THE SCREEN FROM LEFT TO RIGHT
'----------------------------------------------------------
SUB CLEARLEFTRIGHT
LOCAL I%, J%
FOR I% = 1 TO 80
FOR J% = 1 TO 25
LOCATE J%, I%:PRINT " ";
NEXT J%
NEXT I%
END SUB
'
' CLEARS THE SCREEN FROM CENTER TO BOTH SIDES
'----------------------------------------------------------
SUB CLEARMOUT
LOCAL I%, J%, K%
K% = 41
FOR I% = 40 TO 1 STEP -1
FOR J% = 1 TO 25
LOCATE J%, I%:PRINT " ";
LOCATE J%, K%:PRINT " ";
NEXT J%
K% = K% + 1
NEXT I%
END SUB
'
' CLEARS THE SCREEN FROM MIDDLE TO TOP & BOTTOM
'----------------------------------------------------------
SUB CLEAROUT
LOCAL I%, J%
J% = 13
FOR I% = 12 TO 1 STEP -1
LOCATE I%,1:PRINT STRING$(80," ");
LOCATE J%,1:PRINT STRING$(80," ");
DELAY .05 '** REMOVE DELAY IF NEEDED **
J% = J% + 1
NEXT I%
LOCATE 25,1:PRINT STRING$(80," ");
END SUB
'
' CLEARS THE SCREEN FROM BOTH SIDES TO CENTER
'----------------------------------------------------------
SUB CLEAROUTM
LOCAL I%, J%, K%
K% = 80
FOR I% = 1 TO 40
FOR J% = 1 TO 25
LOCATE J%, I%:PRINT " ";
LOCATE J%, K%:PRINT " ";
NEXT J%
K% = K% - 1
NEXT I%
END SUB
'
' CLEARS THE SCREEN FROM RIGHT TO LEFT
'----------------------------------------------------------
SUB CLEARRIGHTLEFT
LOCAL I%, J%
FOR I% = 80 TO 1 STEP -1
FOR J% = 1 TO 25
LOCATE J%, I%:PRINT " ";
NEXT J%
NEXT I%
END SUB
'
' CLEARS THE SCREEN FROM TOP TO BOTTOM
'----------------------------------------------------------
SUB CLEARTOPBOTTOM
LOCAL I%
FOR I% = 1 TO 25
LOCATE I%,1:PRINT STRING$(80," ");
DELAY .05 '** REMOVE DELAY IF NEEDED **
NEXT I%
END SUB
'
' FILLS THE SCREEN WITH SPECIFIED CHARACTER, PAUSES BRIEFLY
'----------------------------------------------------------
SUB FILLSCREEN(CHAR$)
CLS
FOR I% = 1 TO 1920
PRINT CHAR$;:
NEXT I%
FOR J% = 3 TO 1 STEP -1
LOCATE 25,30:PRINT USING "PLEASE WAIT : ## ";J%;
DELAY .99
'*** PAUSE FOR KEYPRESS ***
NEXT J%
END SUB